package com.example;

import java.util.Arrays;

public class Methods {

    public static void main(String[] args) {
        testOne(1, 2, 3, 4, 5);
        double[] numbers = {1, 2, 3, 4, 5};
        testOne(numbers);

        testTwo();
    }

    /*方法中的省略号的作用和用法*/
    // 1：可变参数在编译后会被转换为数组
    // 2：可以传递数组作为可变参数
    // 3：不能在同一个类中定义参数数量相同但类型不同的可变参数方法（会产生歧义）
    // 4：使用可变参数可能会导致性能开销（创建数组的开销）
    // 5：如果明确知道参数个数，最好使用固定参数方法
    public static final void testOne(double... numbers) {
        System.out.println("numbers=>" + "\t" + Arrays.toString(numbers));
        double sum = 0;
        for (double number : numbers) {
            sum += number;
        }
        System.out.println("sum=>" + sum);
    }

    public static final void testTwo() {
        System.out.println("testTwo");
    }

}
